home *** CD-ROM | disk | FTP | other *** search
- Path: news.nyu.edu!schonberg!dewar
- From: dewar@cs.nyu.edu (Robert Dewar)
- Newsgroups: comp.lang.ada,comp.lang.c,comp.lang.c++,comp.edu
- Subject: Re: ANSI C and POSIX (was Re: C/C++ knocks the crap out of Ada)
- Date: 19 Apr 1996 23:11:29 -0400
- Organization: Courant Institute of Mathematical Sciences
- Message-ID: <dewar.829969681@schonberg>
- References: <JSA.96Feb16135027@organon.com> <dewar.829079393@schonberg> <4kf5mrINN47r@keats.ugrad.cs.ubc.ca> <dewar.829135457@schonberg> <4kgmlpINN7aj@keats.ugrad.cs.ubc.ca> <01bb2dcf.9445c060$c6c2b7c7@Zany.localhost>
- NNTP-Posting-Host: schonberg.cs.nyu.edu
- X-Newsreader: NN version 6.5.0 (NOV)
-
- Bradd says
-
- "For comparison, consider other functions that fill buffers, like sprintf
- or scanf. They don't take a byte count at all. They just assume that the
- programmer has the sense to provide a buffer big enough for the data you
- ask for. Providing a length argument doesn't change this kind of common
- sense."
-
- Ah, but see that this common sense is EXACTLY wrong here. Yes indeed,
- I can see one style of common sense that says that the critical thing
- is to provide a bug enugh buffer to accomodate the data you ask for,
- bug remember that the semantics of read is that "the data you are
- asking for" is either count data or all the data that is there, which
- ever is smaller.
-
- So if there are only 5 bytes and the count is 10, then you are asking
- for 5 bytes to be read, but the whole point of this rather tedious
- thread is that this brand of common sense is wrong here.
-
- Incidentally, Bradd;s first paragraph, about just trying things till they
- work, and not reading the standard, is a rather appalling commentary on
- the state of the way that many programmers work if you ask me. This kind
- of attitude is what causes a LOT of portability problems in read life.
-
-